Career 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004 2003 2002
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Canada F3 Canada F4 Canada F2 Canada F1 Canada F2 Canada F3 Guatemala F1 Panama F1 Costa Rica F1 USA F4 USA F5 USA F6 Canada F2 USA F7 USA F8 El Salvador F1 Guatemala F1 Colombia F1 Colombia F2 Canada F9 Canada F5 Canada F7 Venezuela F8 USA F26 USA F27 USA F5 USA F6 Canada F1 Canada F2 Romania F1 Canada F5 Canada F7 Canada F9 Australia F1 Canada F1 Canada F2 Canada F5 Canada F7 Canada F8 Canada F6 Canada F9 USA F16 USA F24 USA F25 Canada F1 Canada F3 El Salvador F1 USA F17 USA F18 Canada F3 Canada F4 Canada F5 Canada F5 M25 Nur-Sultan Open Castilla y Leon - Segovia Bogota Challenger - Bogota Challenger Leon 2004 - Leon Corona Mexico City Open - Mexico City Challenger Banque Nationale Rimouski - Rimouski XXX Edizione 'A Savoldi Marco' - Manerbio Countrywide Classic USTA Challenger - Carson The Surbiton Trophy - Surbiton Sunset Moulding Yuba City Racquet Club Challenger - Yuba City Trofeo Sisma Mantova - Mantova Challenger Natrel Presented by National Bank - Granby The Surbiton Trophy - Surbiton Banca Marche Tennis Cup - San Benedetto Bruno & Bruno Trial Lawyers Men's Challenger - New Orleans Ethias Trophy - Mons II Naples ITG Challenger - Naples Seguros Bolivar Open - Bogota Morocco Tennis Tour - Rabat Morocco Tennis Tour - Marrakech Seguros Bolivar Open - Bogota Copa Petrobras - Bogota Moncton Men's Challenger - Moncton Challenger Leon 2003 - Leon VIII Avierto Internacional de Salinas - Salinas San Luis Potosi Challenger - San Luis Potosi San Marino Cepu Open - San Marino Oldum Brown Vancouver Open - Vancouver Levene Gouldin & Thompson Tennis Challenger - Binghamton Waco Tennis Challenger - Waco Maia Open 2002 - Maia Bancolombia Open - Cali Ford Tennis Championships - Louisville Ciudad de Pozoblanco Open Diputacion - Cordoba 3° Trofeo 'Citta di Brindisi' - Brindisi USTA Challenger of San Antonio - San Antonio National Bank Men's Rimouski Challenger - Rimouski Corona Mexico City Open - Mexico City Arroyo de la Encomienda - Valladolid Oklahoma Challenger - Tulsa The Surbiton Trophy - Surbiton San Luis Potosi Challenger - San Luis Potosi Abierto Club Casablanca - Mexico City Ciudad de Pozoblanco Open Diputacion - Cordoba M25 Cancun Heilbronn Challenger Challenger Banque Nationale - Granby Wroclaw Challenger Dallas Challenger Bogota Challenger Mexico City Challenger The 'Fitz' Casino Challenger - Tunica 2007 West Side Tennis Club Clay Court Challenger - Forest Hills Arpa Ceramic Cup - Reggio Emilia Reggio Emilia Challenger Turin Challenger Granby Challenger Vancouver Challenger dBI Tennis Challenger - Binghamton GHI Bronx Classic - Bronx Tatra Banka Open - Bratislava Cali Challenger Bogota Challenger Quito Challenger Mons Challenger Montevideo Challenger The Natrel's Challenger - Granby Rennes Challenger Santiago Challenger Ethias Trophy - Mons Carson Challenger Ojai Challenger Bogota Challenger Aptos Challenger Lubbock Challenger - Lubbock San Luis Potosi Challenger - San Luis Potosi Singapore Challenger San Jose Challenger BNP Paribas Primrose - Bordeaux Rimouski Challenger Barranquilla Challenger Rome Challenger Memorial A. Manfredini Sassuolo Challenger - Sassuolo Alessandria Challenger Nottingham Challenger Bogota Challenger Ford Tennis Championships - Louisville Tatra Banka Slovak Open - Bratislava Salinas Challenger ECM Prague Open 2005 - Prague Asuncion Challenger Carson Challenger Rennes Challenger Challenger de Providencia-Copa Kia - Santiago Medellin Challenger Abierto Internacional de Salinas 'Dario Expreso' - Salinas Knoxville Challenger Noumea Challenger Honolulu Challenger Zagreb Challenger Pereira Challenger Reggio Emilia Challenger Barranquilla Challenger Athens Challenger Granby Challenger Orbetello Challenger Zenith Tennis Cup-Harbour Club - Milan Mobilux Open - Luxembourg Tallahassee Challenger Arad Challenger Prague Challenger Burnie Challenger Granby Challenger Semgroup Challenger - Tulsa Seguros Bolivar Open - Cali Lexington Challenger Copa Petrobras-Colombia - Bogota Prague Challenger Vancouver Challenger JSM Challenger of Champaign - Urbana BMW Tennis Championship - Sunrise Seguros Bolivar Open - Medellin San Luis Potosi Challenger - San Luis Potosi Abierto Colombiano de Tenis - Bogota Napa Challenger Tiburon Challenger Noumea Challenger Maui Challenger Bucaramanga Challenger Dallas Challenger Irving Challenger Lexington Challenger Napa Challenger Pereira Challenger Open de Montauban - Montauban Riviera di Rimini Challenger - Rimini Columbus Challenger Pereira Challenger Sacramento Challenger Cali Challenger Noumea Challenger Happy Valley Challenger Bucaramanga Challenger Drummondville Challenger Leon Challenger Savannah Challenger Tallahassee Challenger Bordeaux Challenger Barranquilla Challenger Monterrey Challenger IX Abierto Internacional de Salinas - Salinas Knoxville Challenger Noumea Challenger Barranquilla Challenger Savannah Challenger Vicenza Challenger Surbiton Challenger Nottingham Challenger Winnipeg Challenger Gatineau Challenger Granby Challenger Mons Challenger Floridablanca Challenger Gwangju Challenger Ningboo Challenger Indian Wells Challenger Sarasota Challenger Tallahassee Challenger Pereira Challenger Bordeaux Challenger Nottingham Challenger Dallas Challenger Bogota Challenger San Luis Potosi Challenger Manta Challenger Nur-Sultan 3 Challenger Lexington Challenger Granby Challenger Ciudad de Pozoblanco Open Diputacion - Cordoba Sacramento Challenger Happy Valley Challenger Chitre Challenger Odlum Brown Vancouver Open - Vancouver Vancouver Challenger Kosice Challenger Winnetka Challenger Cary Challenger Lexington Challenger Tallahassee Challenger Bordeaux Challenger Bangkok Challenger Manta Challenger Sacramento Challenger Cali Challenger Tiburon Challenger Pro Challenger at Calabasas - Calabasas Le Gosier Challenger Bucaramanga Challenger Morelos Challenger Savannah Challenger Aix En Provence Challenger Knoxville Challenger Puerto Vallarta Challenger Granby Challenger Surbiton Challenger PrivatBank Cup - Dnepropetrovsk Winnipeg Challenger Tiburon Challenger Gatineau Challenger Medellin Challenger Fairfield Challenger Ilkley Challenger Morelos Challenger Le Gosier Challenger Manchester Challenger Ilkley Challenger Ho Chi Minh City Challenger Cary Challenger Stockton Challenger Charlottesville Challenger Morelos Challenger San Francisco Challenger Sarasota Challenger Bordeaux Challenger XL Challenger de Tenis Copa Sevilla - Seville Santo Domingo Challenger Granby Challenger Shenzhen Challenger Bogota Challenger - Bogota Sarasota Challenger Savannah Challenger Granby Challenger Tiburon Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Caltanissetta Challenger Furth Challenger Czech Open 2005 - Prostejov Kosice Challenger Indian Wells Challenger Phoenix Challenger Monterrey Challenger Panama City Challenger Sarasota Challenger Bogota Challenger Heilbronn Challenger Recanati Challenger The Natrel's Challenger of Granby - Granby Project Independence Men's Challenger - Mandeville Vancouver Challenger Lexington Challenger IX Trofeo Ciudad de Quito - Quito Morelos Challenger Orlando Challenger Sao Paulo - Brazil Hilton Waikoloa Village USTA Challenger - Waikoloa Ostrava Challenger Naples Challenger - Naples Nur-Sultan 4 Challenger Nur-Sultan 2 Challenger Columbus Challenger Charlottesville Challenger Columbus Challenger Cleveland Challenger X Open Internacional D'Andorra - Andorra Charlottesville Challenger Bogota Challenger XI Trofeo Ciudad de Quito - Quito Tunis Open 2006 - Tunis Swanston Challenger - Sacramento III Aberto Santa Catarina de Tenis - Florianopolis XL Bermuda Open - Bermuda Trofeo Cassa di Risparmio di Alessandria - Alessandria Columbus Challenger San Luis Potosi Challenger Tiburon Challenger Milan Challenger 2008 Lubbock Challenger - Lubbock Fairfield Challenger Charlottesville Challenger Knoxville Challenger Bangkok Challenger Ethias Trophy - Mons Vancouver Challenger Columbus Challenger Sacramento Challenger - Sacramento The Mercedes Benz of Calabasas - Calabasas Ostrava Challenger Barcelona Challenger Istanbul Challenger Cary Challenger Caloundra Challenger Potchefstroom 1 Challenger Pereira Challenger The Stella Artois Grass Court Championships - London Synsam Swedish Open - Bastad The Priority Telecom Open - Amersfoort Generali Open - Kitzbuhel San Remo Challenger Legg Mason Tennis Classic - Washington D.C. Zagreb Challenger Napoli Challenger Kremlin Cup - Moscow Alessandria Challenger Bordeaux Challenger Furth Challenger RCA Championships - Indianapolis Mercedes-Benz Cup - Los Angeles Legg Mason Tennis Classic - Washington D.C. The Stella Artois Championships - London BA-CA Tennis Trophy - Vienna Grand Prix de Tennis de Lyon - Lyon Open Seat Godo 2007 - Barcelona Estoril Open - Estoril RCA Championships - Indianapolis Legg Mason Tennis Classic - Washington Grand Prix de Tennis de Lyon - Lyon Sarasota Challenger The Nottingham Open - Nottingham Indianapolis Tennis Championships - Indianapolis Legg Mason Tennis Classic - Washington Grand Prix de Tennis de Lyon - Lyon Bogota Challenger AEGON Championships - London Campbells Hall of Fame Tennis Championships - Newport Countrywide Classic - Los Angeles Legg Mason Tennis Classic - Washington Bank Austria Tennis Trophy - Vienna Chennai Open - Chennai Burnie Challenger Champaign Challenger U.S. Mens's Clay Court Championship - Houston Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Serbia Open - Belgrade Ordina Open - s-Hertogenbosch Malaysian Open - Kuala Lumpur Brisbane International - Brisbane Medibank International - Sydney SAP Open - San Jose Delray Beach International Tennis Championships - Delray Beach US Men's Clay Court Championship - Houston Estoril Open - Estoril Legg Mason Tennis Classic - Washington Winston Salem - Winston Salem If Stockholm Open - Stockholm Heineken Open - Auckland UNICEF Open - 's Hertogenbosch San Benedetto Challenger Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Brisbane International - Brisbane Heineken Open - Auckland SAP Open - San Jose U.S. National Indoor Tennis Championships - Memphis Winnipeg Challenger Sacramento Challenger Prostejov Challenger Delray Beach International Tennis Championships - Delray Beach Honolulu Challenger Orlando Challenger Open de Tenis Comunidad Valenciana - Valencia Bucaramanga Challenger The Artois Championships - London Drummondville Challenger BB&T Atlanta Open - Atlanta Delray Beach International Tennis Championships - Delray Beach PTT Thailand Open - Bangkok Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Sunrise Challenger Brasil Open - Costa do Sauipe Claro Open Colombia - Bogota Noumea Challenger Heineken Open - Auckland Leon Challenger Abierto Mexicano - Los Cabos Ecuador Open - Quito Memphis Open - Memphis International Tennis Championships - Delray Beach West Lakes Challenger Open Parc - Lyon US Men's Clay Court Championship - Houston Sydney Challenger Rimouski Challenger Monterrey Challenger Rimouski Challenger Open de Nice Cote d'Azur - Nice Thailand Open - Bangkok Countrywide Classic - Los Angeles Campionati Internazionali di Sicilia - Palermo UNICEF Open - 's Hertogenbosch Bogota Challenger Nottingham Challenger Grand Prix de Tennis de Lyon - Lyon Brisbane International - Brisbane Panama City Challenger Baton Rouge Challenger BMW Open - Munich Abierto Mexicano - Los Cabos Las Vegas Challenger Charlottesville Challenger Abierto Mexicano Telcel - Acapulco Tallahassee Challenger Bogota Challenger Erste Bank Open - Vienna RCA Championships - Indianapolis Knoxville Challenger Gerry Weber Open - Halle Las Vegas Challenger Chennai Open - Chennai Sydney International - Sydney Open de la Comunidad Valenciana - Valencia The Stella Artois Championships - London Next Generation Adelaide International - Adelaide Champaign Challenger Potchefstroom 2 Challenger Infosys Hall of Fame Open - Newport New York Open - New York Savannah Challenger Porto Challenger Copa Telmex - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Gerry Weber Open - Halle Legg Mason Tennis Classic - Washington AIG Japan Open Tennis Championships - Tokyo Open de Tenis Comunidad Valenciana - Valencia Aircel Chennai Open - Chennai Farmers Classic - Los Angeles Manchester Challenger Abierto Mexicano Telcel - Acapulco Brisbane International - Brisbane Regions Morgan Keegan Championships - Memphis Delray Beach International Tennis Championships - Delray Beach BMW Open - Munich Open de Nice Cote d'Azur - Nice Portugal Open - Oeiras Champaign Challenger US Men's Clay Court Championship - Houston Guadalajara Challenger Citi Open - Washington Claro Open Colombia - Bogota Citi Open - Washington Valencia Open - Valencia Gatineau Challenger Delray Beach Open - Delray Beach Medellin Challenger Maui Challenger Iasi Challenger US Men's Clay Court Championship - Houston Split Challenger Canberra Challenger Topshelf Open - 's-Hertogenbosch Puebla Challenger Drummondville Challenger Aix En Provence Challenger Tallahassee Challenger Cali Challenger If Stockholm Open - Stockholm Valencia Open - Valencia Ecuador Open - Quito Maui Challenger Knoxville Challenger Bogota Challenger Mercedes Cup - Stuttgart Gerry Weber Open - Halle Hall of Fame Tennis Championships - Newport Savannah Challenger Claro Open Colombia - Bogota Dallas Challenger Kobe Challenger Hua Hin Challenger Monterrey Challenger USTA Challenger of North Miami Beach - North Miami Beach Intrum Stockholm Open - Stockholm Newport Beach Challenger Delray Beach Open - Delray Beach Ilkley Challenger Guadalajara Challenger Citi Open - Washington Shanghai Challenger Prague Challenger Fairfield Challenger Columbus Challenger Delray Beach Open - Delray Beach Winston-Salem Open - Winston-Salem Columbus Challenger Newport Beach Challenger Geneva Open - Geneva Vancouver Challenger Cary Challenger Surbiton Challenger Abierto Mexicano - Los Cabos Winnipeg Challenger Gatineau Challenger Vancouver Challenger Ecuador Open - Quito New Haven Challenger Cary Challenger Las Vegas Challenger Champaign Challenger Guayaquil Challenger Newport Beach Challenger Alicante Challenger Nur-Sultan 1 Challenger Prague Challenger Little Rock Challenger Orlando 2 Challenger The Stella Artois Grass Court Championships - London Regions Morgan Keegan Championships - Memphis Grand Prix Hassan II - Casablanca Countrywide Classic - Los Angeles BA-CA Tennis Trophy - Vienna Brisbane - Brisbane SAP Open - San Jose Brisbane International - Brisbane Ecuador Open - Quito Topshelf Open - 's-Hertogenbosch China Open - Beijing Brisbane International - Brisbane Delray Beach Open - Delray Beach Bank Austria Tennis Trophy - Vienna New York Open - New York Delray Beach Open - Delray Beach Tallahassee Challenger Rogers Cup - Montreal Rogers Masters - Toronto Masters Series Madrid - Madrid BNP Paribas Masters - Paris Pacific Life Open - Indian Wells Sony Ericsson Open - Miami Aix En Provence Challenger Millenium Tennis Championships - Delray Beach Western & Southern Financial Group Masters - Cincinnati Tennis Masters Series - Madrid Tallahassee Challenger Western & Southern Financial Group Masters - Cincinnati Cary 2 Challenger Rogers Masters - Toronto Rogers Cup - Montreal BNP Paribas Masters - Paris Campionati Internazionali d'Italia - Rome Mutua Madrilena Masters Madrid - Madrid Western & Southern Financial Group Masters - Cincinnati BNP Paribas Open - Indian Wells Rogers Cup - Montreal Western & Southern Financial Group Masters - Cincinnati Mutua Madrilena Madrid Open - Madrid Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Sony Open Tennis - Miami Rogers Cup - Montreal Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Sony Open Tennis - Miami New York Open - New York Rogers Cup - Toronto Western & Southern Open - Cincinnati Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL dItalia - Rome Sony Ericsson Open - Miami Rogers Cup - Montreal Miami Open - Miami BNP Paribas Open - Indian Wells Rogers Cup - Montreal Rogers Cup - Toronto Masters Series Monte-Carlo - Monte Carlo Aircel Chennai Open - Chennai Open Parc - Lyon Masters Series - Hamburg Sony Ericsson Open - Miami BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Open 13 - Marseille Rogers Cup - Toronto Shanghai ATP Masters 1000 - Shanghai Mutua Madrid Open - Madrid Medibank International - Sydney Miami Open - Miami BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai Rogers Cup - Toronto Coupe Rogers - Montreal BNP Paribas Open - Indian Wells Winston-Salem Open - Winston-Salem Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Rogers Cup - Toronto Miami Open - Miami Campionati Internazionali D'Italia - Rome Wimbledon - London Rogers Masters - Montreal U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Sony Ericsson Open - Miami Mutua Madrilena Madrid Open - Madrid U.S. Open - New York BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Australian Open - Melbourne Shanghai Rolex Masters - Shanghai Mutua Madrid Open - Madrid French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome National Bank Open - Toronto BNP Paribas Open - Indian Wells Australian Open - Melbourne Miami Open - Miami BNP Paribas Open - Indian Wells Wimbledon - London Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Medibank International - Sydney Hall of Fame Tennis Championships - Newport Tennis Channel Open - Las Vegas Hall of Fame Tennis Championships - Newport Campbells Hall of Fame Tennis Championships - Newport US Men's Clay Court Championship - Houston Open Sabadell Atlantico - Barcelona Swiss Indoors Basel - Basel US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona Fever-Tree Championships - London U.S. Open - New York Wimbledon - London Davis Cup, Group 1, 1R, CAN-MEX 4-1 Davis Cup, Group 1, 1R, COL-URU 3-2 Davis Cup, Group 1, 2R, COL-BRA 1-4 Davis Cup, Group I, 1R, MEX-CAN 1-4 Davis Cup, Group I, 1R, URU-COL 4-1 Davis Cup, Group I, PO, MEX-COL 0-5 Davis Cup, Group I, 2R, BRA-COL 3-1 Davis Cup, World Group, PO, COL-JPN 2-3 Wimbledon - London French Open - Paris U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Australian Open (juniors) French Open (juniors) Australian Open (juniors) U.S. Open (juniors) Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris BNP Paribas Open - Indian Wells Wimbledon - London U.S. Open - New York French Open - Paris Australian Open Qualifying - Doha French Open - Paris Australian Open - Melbourne U.S. Open - New York Olympics - London Citi Open - Washington Davis Cup, World Group, PO, COL-USA 1-3 Davis Cup, Group 1, 1R, CAN-COL 5-0 Davis Cup, Group 1, 2R, CHI-CAN 3-2 Davis Cup, Group 1, 1R, COL-CAN 4-1 Davis Cup, Group I, 2R, COL-URU 5-0 Davis Cup, World Group, 1R, JPN-CAN 4-1 Davis Cup, Group 2, PO, COL-BAH 5-0 Davis Cup, Group 2, 2R, COL-PAR 4-1 Davis Cup, Group 1, 2R, BRA-CAN 3-1 Davis Cup, Group 1, PO, PER-CAN 2-3 Davis Cup, Group 2, F, DOM-COL 0-5 Wimbledon (juniors) Davis Cup, Americas Group I, PO, CAN-DOM 5-0 Davis Cup, World Group, PO, ISR-CAN 2-3 Davis Cup, Group I, 2R, COL-DOM 4-1 Davis Cup, Group 2, 1R, COL-URU 4-1 Davis Cup, World Group, PO, JPN-COL 3-2 Davis Cup, Group 1, 1R, COL-URU 5-0 U.S. Open (juniors) All Lower level tournaments